The present invention relates to computer-implemented systems and methods for generating a report template. More specifically, the invention relates to systems and methods for editing, generating and storing such report templates for generating a spreadsheet report.
Business professionals often deal with large amounts of data in the form of reports. Such reports may be generated from much larger collections of data stored in business databases. A typical report accesses dozens to thousands of records (or more) and requires a few seconds to many hours to generate. Typically, the records appearing in a report are organized by one or more level breaks after which totals or subtotals of numerical data are provided. In addition, most reports are highly formatted to provide relevant background information and facilitate understanding. A single report may be related to other reports, and a whole group of reports may be used by many people associated with an enterprise all of whom need to see the same consistent set of information. Examples of such reports include reports containing records of open orders, sales forecasts, customer statements, and balance sheets.
One type of report that is commonly used is the spreadsheet. A spreadsheet is a grid including a plurality of cells in which formulas may be applied to contents of one or more of the cells within the spreadsheet. Specifically, formulas within a spreadsheet typically refer to cells in the spreadsheet by row and column (e.g., A4). Typically, the contents of the cells of a spreadsheet include values obtained from a data source such as a database. Thus, once the values are obtained from the database, the formulas may be applied.
Typically, when a spreadsheet is used, the information in the spreadsheet is primarily numeric. This numeric information, as well as higher-level information such as sub-totals, is often manually entered into the spreadsheet. However, in order to generate a useful report, additional textual information such as headers are also manually pasted into the spreadsheet. Even once the textual and numeric information is entered into the spreadsheet, this information must often be manually formatted to achieve the desired appearance of the spreadsheet report. Unfortunately, this is a time-consuming, error-prone and tedious process.
Various products have been developed which enable a report to be generated more efficiently. For instance, the XSL (Extensible Stylesheet Language) style sheet enables a text-based language to be used to generate computer code to filter and format data that is entered into a spreadsheet. Unfortunately, this process is similar to computer programming, and is therefore a tedious process that is error-prone. Moreover, since the language is text-based, it is difficult to generate a report in a format that is desired since the end result cannot be viewed until the code is completed and run.
Other products provide translation tools that enable a report to be generated from another document. For instance, Crystal report software, available from Crystal Decisions, located in Palo Alto, Calif., provides translation capabilities. However, this requires that a useable report already exist in another format. Moreover, such products do not enable a report to be generated from an interface that enables the user to view the report format in a graphical interface such as a spreadsheet.
In view of the above, it would be desirable if an automated process for generating a report from a spreadsheet could be developed. Moreover, it would be beneficial if such a report could be formatted and generated from within a graphical user interface such as a spreadsheet.